package com.sinog.biz.mapper.havexml;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.sinog.core.domain.PrisonerSr;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;

/**
 * @desc 社会关系mapper
 * @author dh
 * @date 2020-02-13-19:06
 */
public interface PrisonerSrMapper extends BaseMapper<PrisonerSr> {

    /**
     * 预安置人员信息录入 - 社会关系 - 配偶、父母或其他 - 列表
     * @param page page
     * @param priNum priNum
     * @return List<Map < String,String>>
     */
    List<Map<String,String>> getSrInfo(@Param("page") Page page,@Param("priNum") String priNum);

    /**
     * 删除社会关系信息（逻辑删除）
     * @param id id
     * @return int
     */
    int updateFlag(String id);

    /**
     * 根据犯罪编号查询未删除的社会关系表prisoner_sr
     * @param priNum priNum
     * @return List<PrisonerSr>
     */
    List<PrisonerSr> getListByPrinum(String priNum);

    /**
     * 获取社会关系父母列表
     * @param priNum priNum
     * @return List<Map < String,Object>>
     */
    List<Map<String,Object>> getShgxParentList(@Param("priNum") String priNum);

    /**
     * 更改社会关系表的adduserId
     * @param departId 更改后的addUserId
     * @param priNum 服刑人员编号
     * @return int 受影响行数
     */
    int updateAddUserIdByPriNum(@Param("departId") String departId,@Param("priNum") String priNum);

    /**
     * 安置帮教管理 - 帮教对象信息管理 - 全部人员管理 - 设置帮教小组 - 反显家庭成员
     * @param priNum 服刑人员编号
     * @return List<Map < String,Object>>
     */
    List<Map<String,Object>> getFamilyList(@Param("priNum") String priNum);

    /**
     * 安置帮教管理 - 帮教对象信息管理 - 全部人员管理 - 设置帮教小组 - 待选人员确定
     * @param jtcyids jtcyids
     * @param localCode localCode
     * @return List<Map < String,Object>>
     */
    List<Map<String,Object>> getFamilyListByParam(@Param("jtcyids") List<String> jtcyids,@Param("localCode") String localCode);

    /**
     * 根据id查找社会关系信息
     * @param id id
     * @return PrisonerSr
     */
    PrisonerSr selectPrisonerSrById(String id);

    /**
     * 根据服刑人员编号查询社会关系信息
     * @param priNum priNum
     * @return List<String>
     */
    List<String> searchPrisonerSrByPriNum(String priNum);
}